#!/usr/bin/python
# -*- coding: UTF-8 -*-

print """
触发异常
    我们可以使用raise语句自己触发异常
    raise语法格式如下：
    raise [Exception [, args [, traceback]]]
语句中 Exception 是异常的类型（例如，NameError）参数标准异常中任一种，args 是自已提供的异常参数。
最后一个参数是可选的（在实践中很少使用），如果存在，是跟踪异常对象。

实例
    一个异常可以是一个字符串，类或对象。 Python的内核提供的异常，大多数都是实例化的类，这是一个类的实例的参数。
    定义一个异常非常简单，如下所示：
def functionName( level ):
 if level < 1:
    raise Exception("Invalid level!", level)
    # 触发异常后，后面的代码就不会再执行
"""



# 定义函数
def mye( level ):
    if level < 1:
        raise Exception,"Invalid level!"
        # 触发异常后，后面的代码就不会再执行
try:
    mye(0)            # 触发异常
except Exception,err:
    print 1,err
else:
    print 2
finally:
    print "this is finally"